Approach and mechanism for execution of critical system operations

ABSTRACT

An approach and mechanism for improving reliability, performance and on time execution of critical operations of a system, such as an HVAC. A controller may have two or more processing cores. One core may be dedicated to execution of critical operations of a system. Another core may be dedicated to less- or non-critical operations of the system. For instance, if there are delays relative to the less- or non-critical operations, these delays may be ineffective relative to the processing of critical operations.

This application claims the benefit of U.S. Provisional Patent Application Ser. No. 62/725,990, filed Aug. 31, 2018. U.S. Provisional Patent Application Ser. No. 62/725,990, filed Aug. 31, 2018, is hereby incorporated by reference.

This application claims the benefit of U.S. Provisional Patent Application Ser. No. 62/726,061, filed Aug. 31, 2018. U.S. Provisional Patent Application Ser. No. 62/726,061, filed Aug. 31, 2018, is hereby incorporated by reference.

BACKGROUND

This disclosure pertains to controllers and specifically to various configurations of multi-core controllers.

SUMMARY

The disclosure reveals an approach and mechanism for improving reliability, performance and on time execution of critical operations of a system, such as an HVAC. A controller may have two or more processing cores. One core may be dedicated to execution of critical operations of a system. Another core may be dedicated to less- or non-critical operations of the system. For instance, if there are delays relative to the less- or non-critical operations, these delays may be ineffective relative to the processing of critical operations.

BRIEF DESCRIPTION OF THE DRAWING

FIG. 1 is a diagram of a controller relative to a system in the present application; and

FIG. 2 is a diagram of plant controller firmware.

DESCRIPTION

The present system and approach may incorporate one or more processors, computers, controllers, user interfaces, wireless and/or wire connections, and/or the like, in an implementation described and/or shown herein.

This description may provide one or more illustrative and specific examples or ways of implementing the present system and approach. There may be numerous other examples or ways of implementing the system and approach.

Aspects of the system or approach may be described in terms of symbols in the drawing. Symbols may have virtually any shape (e.g., a block) and may designate hardware, objects, components, activities, states, steps, procedures, and other items.

The present system may be about of how two CPU's/processors can be segregating in terms of heating, ventilation and air conditioning (HVAC) operations. One may just talk about an in-general split of various HVAC components (not operations) and sharing data between them but the present system may be about a specific HVAC operations/activities and their segregation to dedicated cores. One may also talk about single or multiple processors executing instructions and computer programs. Instructions may be executed by one or multiple processors. Thus, such a system may appear more like an overall split system where different components can run into one or more processors. However, the present system may be about any specifics of which an HVAC operation is dedicated to which core for a given device, how many total cores/processors are available, and so on. The present system may be specific to the way one segregates the most critical HVAC operations (i.e., IO, control logic, and the like) to a single core and other operations (e.g., BACnet communication, MSTP routing, and so forth) to another core to achieve more reliability and performance.

It appears troublesome that in the heating, ventilation and air conditioning (HVAC) world today there may be a delay, interruption and/or unreliability in executing the very critical HVAC operations such as control logic execution and command of input/output (TO) devices.

This situation appears to be a common issue with any HVAC controller but it seems most prevalent in a supervisory or plant controller due to a wide set of functionalities that it supports. Possible causes of this situation may be that a controller is busy handling other tasks like BACnet Master Slave Token Passing (MSTP) routing, point sharing, schedule updates, trend updates, building automation and control network (BACnet) communication, and so forth.

The delay may be proportional to the network load, for example, a larger number of MSTP devices may be connected to a plant controller, and then more BACnet requests may need to be handled at a given time, and so on. The delay or interruption seems unacceptable in time-critical industries, like “Pharma”, where even a millisecond delay can incur a major loss.

There seems not to be any out of the box solutions through which these critical HVAC operations can be handled with reliability. It may be difficult to make such approach delay or interruption free.

Also, some solutions may be limited in terms of resources (e.g., processor power, memory availability, and so forth), and thus prove to be ineffective in addressing a noted issue. The present approach may be about segregating the most critical operations of a HVAC controller to a dedicated core in HVAC controller firmware, and improving the reliability, performance, and on time execution of critical HVAC operations.

The present approach may achieve an improved and delay or interruption-free performance on control logic execution and input/output devices commanding a utilization of a dual core capability to the fullest potential, thus providing a more performant solution.

The present approach may be about reserving the highly critical HVAC operations like control logic execution and input/output devices commanding to a M4 core and other operations to an A9 core.

Also, the present approach may be about making the core HVAC functionality independent of network load, achieving more reliable performant and timely HVAC core operations. It may be about providing more priority to the critical HVAC operations, and segregating the HVAC functionalities between the available two cores based on priority levels. The approach may synchronize both the cores periodically to avoid any data inconsistency.

Advantages may include the following features. This system may help in a more reliable performant, and timely operation on control logic execution and IO device command. Being a more or most performant solution, it may be a best fit for time critical jobs like “Pharma”.

This approach or system may help in increasing revenues as a reliable/delay-free core HVAC functionality is a key requirement for some specific jobs (like those of Pharma, hospitals, and so forth). This system may help in boosting the customer confidence thus increasing a customer base. This system may help in a reduction of the number of support calls or issues that may arise due to a heavy network load. The reduction may help reduce travel costs as many or most of the support calls related to core functionality can only be investigated on the site.

The approach may help in bidding for more projects as it is a unique, yet very important use case from a customer's stand point, which many competitors might not have. The system may be a key differentiator and USP for comfort point open controllers, which may be targeted to be released as part of a program.

In a present solution, the comfort point open (CPO) plant controller (PC), Honeywell International Inc. model number 400, for example, i.e., CPO-PC400, may be built with a dual core processor, for example, an M4 core and an A9 core. A diagram of a CPO-PC400 controller 11 is shown in FIG. 1.

In order to achieve more reliable performance and reduce the delays in the most critical HVAC operations, one of the cores, such as an M4 core, may be dedicated only for these operations in the plant controller firmware. Thus, an M4 processor may take care of executing the control logic and commanding the IO devices. Also, the priority of these tasks could be set high when compared to any other tasks that the controller has to handle. Thus, other functionalities like schedules, MSTP routing, BACnet communication, and so on, may be handled by another core, such as an A9 core.

By way of segregating the tasks in controller firmware by utilizing the available two cores, RACL execution and IO handling may have little or no impact even when there is a heavy load on the network or in case of network failure. Since RACL execution and IO handling may be the most critical tasks that a controller has to handle without delay, the present robust design may help in enabling the same.

The data between two cores may be shared periodically so that BACnet communication can be handled with the updated data. In sum, the present approach may be about segregating the most critical operations of a HVAC controller to a dedicated core in HVAC controller firmware.

Two CPUs or processors may be segregating in terms of HVAC operations. The present approach may be a way to segregate the most critical HVAC operations (TO, control logic, and the like) to single core, and other operations to another core to achieve more reliability and performance.

It may be particularly about specific HVAC operations/activities and their segregation into dedicated cores. The present system may be specific to the way one segregates the most critical HVAC operations (TO, control logic, and the like) to single core and other operations (BACnet communication, MSTP routing, and so forth) to another core to achieve increased reliability and performance.

A diagram in FIG. 2 shows CPO-PC400 plant controller firmware 12. An M4 core and an A9 core have a bidirectional connection with each other. An outward connection from the M4 core may for command IO devices and execute control logic (RACL). An outward connection from the A9 core may be for BACnet communication and other HVAC functionaries such as MSTP routing, schedules, and so forth.

The present system may have two or more CPUs or processors that can be segregating in terms of HVAC operations. The system may be about specific HVAC operations and/or activities and their segregation into dedicated cores. The system may be also about any specifics of which HVAC operation is dedicated to a core for a given device, how many total cores and/or processors are available, and so on. The system may be specific as to the way that one can segregate the most critical HVAC operations (TO, control logic) to a single core and other operations (BACnet communication, MSTP routing, and so on) to another core to achieve more reliability and performance.

FIG. 1 is a diagram of a controller 11 with a dual core. An illustrative example may incorporate a Honeywell™ “Comfort Point Open Plant Controller” model 400 (viz., CPO PC400). Controller 11 may have plant controller firmware 12 as shown in FIG. 2. Controller firmware 12 may have an M4 core 13 and an A9 core 14, which may be connected to each other with a two-way path 15. An output 16 from M4 core 13 may provide for a command of I/O devices and for execution of control logic (RACL). An output 17 from A9 core 14 may provide BACnet communication. For certain systems, such as HVAC's, A9 core 14 may provide HVAC functions like MSTP routing, schedules, and so on.

To recap, a multi-core processor may incorporate at least two processor cores. A first core of the at least two processor cores may be dedicated to critical operations of a control system. A second core of the at least two processor cores may be dedicated to non-critical operations of the control system. The first core and the second core may be connected to each other for exchanging data.

The first core is dedicated for providing on-time execution of critical operations.

The first core may be dedicated to achieve delay-free or interruption-free critical operations.

Critical operations may include one or more items selected from a group comprising control logic execution and operation of input/output devices.

The critical operations of the first core M4 may be made independent of a variable network load of the second core A9.

The control system may be an HVAC control system. The HVAC control system may have functionalities segregated between the first core and the second core based on priority levels of criticality of operation of the system.

The first core and the second core are periodically synchronized with each other to avoid data inconsistencies.

Tasks outside of the tasks handled by the first core may incorporate one or more tasks of a group having schedules, BACnet Master Slave Token Passing (MSTP) routing, BACnet communication, point sharing, trends, schedule updates, and trend updates.

The first core and the second core may be a first processor and a second processor, respectively.

Items that cause delay or interruption may be segregated to the second core. Items that need to be executed or commanded immediately may be segregated to the first core. The items that cause delay or interruption may be segregated to the second core and do not necessarily cause delay or interruption of the items that are segregated to the first core.

The first core and the second core may be part of a dual-core processor.

An approach for utilizing a multi-core system, may incorporate segregating two or more processor cores according to operations of a building component, and classifying the operations according to a need of an operation to be executed or commanded within a predetermined period of time. The operations that need to be executed or commanded within a predetermined period of time may be processed by a first processor core of the two or more processor cores. The operations that lack a need to be executed or commanded within a predetermined period of time may be processed by a second, another or other processor core or cores of the two or more processor cores.

Delays or interruptions of operations processed by a second, another or other processor core or cores, may be ineffective upon a period of time for execution or command of operations processed by the first processor core.

The predetermined period of time may be adjustable.

The building component is an HVAC system.

The operations to the first processor core may incorporate one or more items from a group comprising execution of control logic and command of input/output devices.

A processor core is a processor.

A processing mechanism may incorporate a first processor core, and a second processor core. The first processor core may be dedicated to critical operations of an HVAC system. The second processor core may be dedicated to non-critical operations of the HVAC system. The critical operations may be processed by the first processor core within a predetermined period of time.

Operations processed by the first processor core may be strictly unaffected by operations processed by the second processor core.

The mechanism may further incorporate a hardware device connected to the cloud and connected to the first and second processor cores. The first and second processor cores may share data so that external communications can be handled with updated data.

Any publication or patent document noted herein is hereby incorporated by reference to the same extent as if each publication or patent document was specifically and individually indicated to be incorporated by reference.

In the present specification, some of the matter may be of a hypothetical or prophetic nature although stated in another manner or tense.

Although the present system and/or approach has been described with respect to at least one illustrative example, many variations and modifications will become apparent to those skilled in the art upon reading the specification. It is therefore the intention that the appended claims be interpreted as broadly as possible in view of the related art to include all such variations and modifications. 

What is claimed is:
 1. A multi-core processor comprising: at least two processor cores; and wherein: a first core of the at least two processor cores is dedicated to critical operations of a control system; a second core of the at least two processor cores is dedicated to non-critical operations of the control system; and the first core and the second core are connected to each other for exchanging data.
 2. The processor of claim 1, wherein the first core is dedicated for providing on-time execution of critical operations.
 3. The processor of claim 2, wherein the first core is dedicated to achieve delay-free or interruption-free critical operations.
 4. The processor of claim 3, wherein critical operations include one or more items selected from a group comprising control logic execution and operation of input/output devices.
 5. The processor of claim 2, wherein the critical operations of the first core M4 are made independent of a variable network load of the second core A9.
 6. The processor of claim 3, wherein: the control system is an HVAC control system; and the HVAC control system has functionalities segregated between the first core and the second core based on priority levels of criticality of operation of the system.
 7. The processor of claim 2, wherein the first core and the second core are periodically synchronized with each other to avoid data inconsistencies.
 8. The processor of claim 2, wherein tasks outside of the tasks handled by the first core comprise one or more tasks of a group having schedules, BACnet Master Slave Token Passing (MSTP) routing, BACnet communication, point sharing, trends, schedule updates, and trend updates.
 9. The processor of claim 2, wherein the first core and the second core are a first processor and a second processor, respectively.
 10. The processor of claim 6, wherein: items that cause delay or interruption are segregated to the second core; items that need to be executed or commanded immediately are segregated to the first core; and the items that cause delay or interruption are segregated to the second core and do not cause delay or interruption of the items that are segregated to the first core.
 11. The processor of claim 1, wherein the first core and the second core are part of a dual-core processor.
 12. A method for utilizing a multi-core system, comprising: segregating two or more processor cores according to operations of a building component; and classifying the operations according to a need of an operation to be executed or commanded within a predetermined period of time; and wherein: the operations that need to be executed or commanded within a predetermined period of time are processed by a first processor core of the two or more processor cores; and the operations that lack a need to be executed or commanded within a predetermined period of time are processed by a second, another or other processor core or cores of the two or more processor cores.
 13. The method of claim 12, wherein delays or interruptions of operations processed by a second, another or other processor core or cores, are ineffective upon a period of time for execution or command of operations processed by the first processor core.
 14. The method of claim 12, wherein the predetermined period of time is adjustable.
 15. The method of claim 13, wherein the building component is an HVAC system.
 16. The method of claim 15, wherein the operations to the first processor core incorporate one or more items from a group comprising execution of control logic and command of input/output devices.
 17. The method of claim 16, wherein a processor core is a processor.
 18. A processing mechanism comprising: a first processor core; and a second processor core; and wherein: the first processor core is dedicated to critical operations of an HVAC system; the second processor core is dedicated to non-critical operations of the HVAC system; and the critical operations are processed by the first processor core within a predetermined period of time.
 19. The mechanism of claim 18, wherein operations processed by the first processor core are unaffected by operations processed by the second processor core.
 20. The mechanism of claim 18, further comprising: a hardware device connected to the cloud and connected to the first and second processor cores; and wherein the first and second processor cores share data so that external communications can be handled with updated data. 